package com.raymond.thread.manager.annotation;

import org.springframework.context.annotation.Lazy;
import org.springframework.context.annotation.Scope;

import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;

/**
 * 管理循环线程
 * 使用哪个线程池的名称@threadPoolName
 * 当前线程名称@threadName
 * 循环线程个数@threadNum
 * @author :  raymond
 * @version :  V1.0
 * @date :  2020-09-11 10:32
 */
@Target({ ElementType.TYPE })
@Retention( RetentionPolicy.RUNTIME)
@Lazy
@Scope("prototype")
public @interface ManagerCirculationThread {

    ManagerThread managerThread() default @ManagerThread;

    /**
     * 线程个数
     * @return 线程个数
     */
    String threadNum() default "1";


}
